package org.niux.aims.service;

import java.util.List;

import org.niux.aims.models.Account;
import org.niux.aims.vo.AccountVO;

public interface IAccountService {

	/**
	 * 
	 * 方法概述：根据帐户名和应用ID获取账户数据
	 * 描述：根据帐户名和应用ID获取账户数据
	 * @param name
	 * @param appid
	 * @return
	 * 返回类型：List<Account>
	 * 修改人：梁铭显
	 * 修改时间：2013-7-29
	 */
	public abstract List<AccountVO> findByNameAndApp(String name, Integer appid);

	/**
	 * 
	 * 方法概述：获取所有账户数据
	 * 描述：获取所有账户数据
	 * @return
	 * 返回类型：List<Account>
	 * 修改人：梁铭显
	 * 修改时间：2013-8-1
	 */
	public abstract List<Account> findAll();

	public abstract List<AccountVO> findByPage(int startPage, int pageSize,String queryArg);

	public abstract AccountVO findById(int id);

	public abstract void save(AccountVO accountVo);

	public abstract void update(AccountVO accountVo);

	public abstract void delete(int id);

	public abstract void updatePassword(AccountVO accountVo);

	public abstract boolean checkPassword(int id, String password);

	public abstract List<Account> findByAccountName(String accountName);

	public abstract void assignmentAuths(AccountVO accountVo);

}